92a93
>       REAL(f4), PRIVATE, ALLOCATABLE :: STOMS(:,:)               
95a97,98
>       REAL(f4), PRIVATE, POINTER     :: TOMS1(:,:)               
>       REAL(f4), PRIVATE, POINTER     :: TOMS2(:,:)               
224c227
<          CALL ERROR_STOP ( 'Cannot get pointer to TOMS_O3_COL', LOC )
---
>          CALL ERROR_STOP ( 'Cannot get pointer to TOMS1_O3_COL', LOC )
225a229,243
>       !-----------------------------------------------------------------
>       ! Read TOMS O3 columns first day [dobsons]
>       !-----------------------------------------------------------------
>       CALL HCO_GetPtr( am_I_Root, 'TOMS1_O3_COL', TOMS1, RC )
>       IF ( RC /= GIGC_SUCCESS ) THEN
>          CALL ERROR_STOP ( 'Cannot get pointer to TOMS1_O3_COL', LOC )
>       ENDIF
>       !-----------------------------------------------------------------
>       ! Read TOMS O3 columns last day [dobsons]
>       !-----------------------------------------------------------------
>       CALL HCO_GetPtr( am_I_Root, 'TOMS2_O3_COL', TOMS2, RC )
>       IF ( RC /= GIGC_SUCCESS ) THEN
>          CALL ERROR_STOP ( 'Cannot get pointer to TOMS2_O3_COL', LOC )
>       ENDIF
> 
232c250
<          CALL ERROR_STOP ( 'Cannot get pointer to TOMS_O3_COL', LOC )
---
>          CALL ERROR_STOP ( 'Cannot get pointer to DTOMS1_O3_COL', LOC )
240c258
<          CALL ERROR_STOP ( 'Cannot get pointer to TOMS_O3_COL', LOC )
---
>          CALL ERROR_STOP ( 'Cannot get pointer to DTOMS2_O3_COL', LOC )
395,397c413
<          IF ( DAY <= 15 ) THEN 
< 
<             ! Interpolate O3 to current day (w/in 1st half of month)
---
>             ! Calc difference
403,407c419
<                IF ( TOMS(I,J)   > -999e+0_f4  .AND. 
<      &              DTOMS1(I,J) > -999e+0_f4 ) THEN  
<                   TO3_DAILY(I,J) = TOMS(I,J) 
<      &                           + DTOMS1(I,J) * ( DAY - 15 )
<                ENDIF            
---
>                  STOMS(I,J) = (TOMS2(I,J)-TOMS1(I,J))/30.0_fp
411,413d422
< 
<          ELSE
<   
420,424c429
<                IF ( TOMS(I,J)   > -999e+0_f4  .AND. 
<      &              DTOMS2(I,J) > -999e+0_f4 ) THEN  
<                   TO3_DAILY(I,J) = TOMS(I,J) 
<      &                           + DTOMS2(I,J) * ( DAY - 15 )
<                ENDIF
---
>                 TO3_DAILY(I,J) = TOMS1(I,J) + (DAY - 1) * STOMS(I,J)
429,430d433
<          ENDIF
< 
520a524,526
>       IF (.not. ALLOCATED( STOMS) )
>      &     ALLOCATE( STOMS( IIPAR, JJPAR ), STAT=RC )
>       IF ( RC /= GIGC_SUCCESS ) CALL ALLOC_ERR( 'STOMS' )
526a533,534
>       TOMS1 => NULL()
>       TOMS2 => NULL()
556a565
>       IF ( ALLOCATED( STOMS ) ) DEALLOCATE( STOMS )
561a571,572
>       TOMS1 => NULL()
>       TOMS2 => NULL()
